一、主机环境准备
系统准备
每个Java线程都使用自己的堆栈内存。默认堆栈大小为1024k(= 1M)。您可以减小堆栈大小,如 java -Xss512k … 。如果堆栈大小太小,则无法启动JVM。
并注意堆内存配置:(初始) -Xms 和(最大) -Xmx 。分配给堆的内存越多,堆栈的可用内存就越少。
/etc/security/limit.conf
zcbus soft nofile 65535
zcbus hard nofile 65535
zcbus soft nofile 65536
zcbus hard nofile 65536
用户基本信息限制
- ulimit -a 中的某些值会影响线程限制。
- 最大内存大小 - 大多数64位计算机无限制
- 最大用户进程 - linux处理线程喜欢进程
- 虚拟内存 - 在大多数64位计算机上无限制。虚拟内存使用量增加-Xss配置(默认1024k)
- 您可以通过(临时)运行<$ c $更改这些值c> ulimit 命令或(永久)编辑 /etc/security/limits.conf 。
UNLIMITED限制
ulimit -a查看参数列表
max memory size - unlimited on most 64bit machines
max user processes - linux treats threads like processes
virtual memory - unlimited on most 64bit machines. virtual memory usage is increased by -Xss configuration (default 1024k)
虚机内核参数调整
配置文件:/etc/sysctl.conf
kernel.threads-max = 999999 ### 此值为系统全局(包括非JVM进程)最大线程数
kernel.pid_max = 999999 ###如果 cat / proc / sys / kernel / pid_max 与当前限制类似,请增加此值。 Linux将线程视为进程。
vm.max_map_count = 1999999 ###尝试保护堆栈保护页失败。和 OpenJDK 64位服务器VM警告:尝试释放堆栈保护页失败。错误消息由JavaThread :: create_stack_guard_pages()发出,并调用os :: guard_memory()。在Linux中,此函数是mprotect()。
软件包下载地址
kafka下载链接:http://101.201.81.45:8888/ZCBUS/kafka.tar.gz
mysql下载链接:https://pan.baidu.com/s/1UxOny-AQX7NskY05hggDlQ?pwd=q4yw
提取码:q4yw
二、MySQL安装
环境准备
解压安装包
- tar xvf mysql-5.7.36-1.el7.x86_64.rpm-bundle.tar
关闭SELinux
注:不关闭的话,装完启动mysql会报:mysqld: File ‘./zcbus-mysql-binlog.index’ not found (Errcode: 13 - Permission denied)
修改配置文件:
修改/etc/selinux/config 文件
将SELINUX=enforcing改为SELINUX=disabled
卸载自带的mariadb
查看mariadb版本: rpm -qa|grep mariadb
强制卸载命令:rpm -ev --nodeps mariadb-libs-5.5.68-1.el7.x86_64
rpm安装MySQL
rpm -ivh --nodeps mysql-community-client-5.7.36-1.el7.x86_64.rpm
rpm -ivh --nodeps mysql-community-common-5.7.36-1.el7.x86_64.rpm
rpm -ivh --nodeps mysql-community-devel-5.7.36-1.el7.x86_64.rpm
rpm -ivh --nodeps mysql-community-embedded-5.7.36-1.el7.x86_64.rpm
rpm -ivh --nodeps mysql-community-embedded-compat-5.7.36-1.el7.x86_64.rpm
rpm -ivh --nodeps mysql-community-embedded-devel-5.7.36-1.el7.x86_64.rpm
rpm -ivh --nodeps mysql-community-libs-5.7.36-1.el7.x86_64.rpm
rpm -ivh --nodeps mysql-community-libs-compat-5.7.36-1.el7.x86_64.rpm
rpm -ivh --nodeps mysql-community-server-5.7.36-1.el7.x86_64.rpm
rpm -ivh --nodeps mysql-community-test-5.7.36-1.el7.x86_64.rpm
修改/etc/my.cnf文件(末尾添加,目录可根据实际环境修改):
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
server-id=1
lower_case_table_names=1
log-bin=zcbus-mysql-binlog
binlog_format=row
symbolic-links=0
sql_mode="STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
secure_file_priv=''
innodb_log_file_size=1024M
innodb_strict_mode=0
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
启动数据库
启动MySQL:
systemctl start mysqld.service
开机自启动:
systemctl enable mysqld.service
登录MySQL
登录MySQL,创建zcbus用户并授权:
CREATE USER 'zcbus'@'%' IDENTIFIED BY '1qaz!QAZ';
grant all on *.* to zcbus@"%" IDENTIFIED BY '1qaz!QAZ' with grant option;
FLUSH PRIVILEGES;
写入数据文件
三、kafka安装
解压安装包
修改zookeeper.properties(SETUP_HOME/kafka/config目录下)
dataDir=SETUP_HOME/kafka/data/zookeeper #指定zookeeper数据路径
clientPort=2181 #指定 zookeeper端口
修改server.properties(SETUP_HOME/kafka/config目录下)
broker.id=0 #每个broker的唯一id
listeners=PLAINTEXT://0.0.0.0:9092 #指定端口
advertised.listeners=PLAINTEXT://主机IP:9092 #指定IP和端口
advertised.host.name=主机IP #指定IP
log.dirs=SETUP_HOME/kafka/data/kafka-logs #指定kafka数据路径
启动
启动zookeeper(SETUP_HOME/kafka目录下)
命令:sh sz.sh
启动kafka(SETUP_HOME/kafka目录下)
命令:sh ss.sh
停止
停止zookeeper和kafka(SETUP_HOME/kafka目录下)
命令:sh stop.sh
检查日志
检查zookeeper日志(SETUP_HOME/kafka目录下)
命令:tail -f zookeeper.log
检查kafka日志(SETUP_HOME/kafka目录下)
命令:tail -f kafka.log